home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1997 February
/
EnigmA AMIGA RUN 15 (1997)(G.R. Edizioni)(IT)[!][issue 1997-02][PLANET CD V].iso
/
progs
/
giochi
/
vchess
/
vchess.doc
< prev
next >
Wrap
Text File
|
1996-12-28
|
75KB
|
1,683 lines
VChess 4.1 - A Chess game for Amiga-Computers (OS 2.0-3.1)
© 1993-1996 by Stefan Salewski
All Rights Reserved
Copyright and other legal stuff
===============================
VChess is NOT a PD-Program, but fully functional (non crippled) Shareware!
VChess and most other files of this package are Copyright © 1993-1996 by
Stefan Salewski.
In spite of several tests, no warranty is made that there are no errors in
VChess. YOU USE THIS PROGRAM AT YOUR OWN RISK. In no case I will be liable
for any damage, direct or indirect, resulting by the use of VChess.
The complete VChess 4.1-Package contains the following files:
File or directory Size Meaning
------------------------------------------------------------------------
VChess 138804 Mainprogram, V4.1, © S.Salewski
VChess.doc 75477 English documentation
VChessOpenings 3280 1630 Halfmoves
Product-Info 1883 For KingFisher 2.0 or similar tools.
Games Dir Saved games.
Text Dir Game, saved as text file.
Icons Dir Icons for games, text and configurations
Catalogs Dir English Catalog
Configs Dir Example-Configurations
Checkmates Dir Some Checkmates (mate in 2, 3 or 4 moves)
Chesstasks Dir Some Chesstasks(find the best move)
Catalog-Translations Dir Only English
This release of VChess is again freely distributable. Permission is
granted to include this package in free "Public-Domain"- collections, like
the good old Fred Fish's Amiga FD-Disk Library or the great german
"Berliner Spielekiste". The prefered way of distribution is by AmiNet and
other free FTP-Servers!
Distribution of VChess is only allowed if the following conditions are
fulfilled:
All these files must remain unmodified. None of these files may be
distributed on its own, the entire package must be distributed together.
(It is allowed to archive these files with archiving-programs like LHA
(© Stefan Boberg) if it is possible to retrieve the files from the archive
in their original state.)
The complete package may be (in archived form) uploaded to Bulletin Board
Systems or FTP servers.
PD-dealers and other people who want to distribute VChess are only allowed
to take money for the floppy disk and copying efforts. Nobody may take
more than $3(US) or DM 4 for the disk with VChess. This is also valid if
there is other software besides VChess on the Disk.
The distribution of VChess in "Software Packages" (more than one disk)
together with other Software is only allowed with my written permission.
The distribution of VChess on CD-ROM is only allowed if the price of the
CD-ROM in not greater than US$0.2 per megabyte. This means, that nobody
may sell a CD-ROM containing VChess and 100 Megabytes of other software
for a price greater than US$20.
Distribution of VChess together with commercial software is forbidden.
Distribution of VChess 4.1 on "Coverdisk" of Computer magazines is only
allowed with my written permission!
(Some Computer-Magazines put older releases of VChess on their coverdisc,
without asking me for permission. And they don't gave me anything for it.
I will not tolerate any more, that magazines make so much money with my
work. I know that they make much money, because some weeks ago a magazine
called me and offered 2000 DM for using release 4.0 on their Coverdisc.
But please regard this: If you should get release 4.1 from such a
coverdisk, you can suppose that they gave me some money for it. But this
means not that release 4.1 is commercial software now! VChess 4.1 is
freely distributable, it is your decision if you take it from a coverdisk,
or free of charge from AmiNet or friends! So even people, who got VChess
from an expensive Coverdisk, have to pay their shareware-contribution.)
Of course it is reserved for me to forbid single companies or persons the
distribution of VChess.
Starting with release 4.0 it is forbidden for the following persons or
companies to sell or distribute VChess:
A.P.S. - electronic -
Sonnelind Lange
Alex Lange
They put my VChess 3.5 on their Time 493 disk.
On their disk is following text:
-------------------------------------------------------------------------
Diese TIME kostet DM 5.--. Verschiedene Autoren/Programmierer sind/werden
finanziell beteiligt, so daß andere Händler bitte ebenfalls diesen Preis
berücksichtigen mögen.
Eine Kopiergebühr unter DM 5.- (incl. Disk) ist zwar aus Wettbewerbssicht
sicherlich überlegenswert, doch damit werden die Autoren um Ihren Anteil
betrogen ..., während ein Preis über DM 5.- die Bezahlung etwaiger Share-
ware-Gebühren an die Autoren beeinträchtigen dürfte.
-------------------------------------------------------------------------
Some people read this text and thought that I got money from this
company! This is not true, they just sended me 4 disk of their time-disks.
User of VChess should regard this: An empty Floppy-Disk costs less than
US$1, and copying VChess takes less than two minutes. If you paid more
than US$2 for the disk with VChess, then this was quite expensive. But if
you have paid more than US$3, this was too much. Try to get your money
back, and tell me about it.
What is new in release 4.1 ?
============================
Release 4.1 is a bugfix for release 4.0 and 4.0a. With V4.0 it was
possible to load old V3.5 games, and to save the game in the new V4.0
format. But then it was impossible to load the game again. This is fixed
now. Additional, there was an very ugly bug in all former releases of
VChess. I discovered this bug in late November 1996 for the first time.
This bug causes a memory-corruption after termination of VChess in very
rare and special cases. It was very difficul to fix this bug, but now it
is fixed. The reason for this bug was this: While termination of VChess, I
called DeleteLayer() to free an used layer, and direct after this I called
FreeRaster() to deallocate the BitPlanes of this layer. But DeleteLayer()
V40.1 uses the blitter to clear the planes of the layer. So it occured in
very special cases, that the CPU deallocates the BitPlanes, while the
blitter was clearing it. This can give memory-problems, lost of chipmem
and GURU 0100000C (Sanity check on memory list failed during AvailMem).
There must be a WaitBlit() between DeleteLayer() and FreeRaster()!
There are no other differences between V4.0 and V4.1.
What is new in release 4.0 ?
============================
There are a lot of improvements: Opening-Library and saving of Games is
fully rewritten. Now the Opening-library takes less space on Disk and in
RAM, and is more powerful. You can assign a quality (!!,!,!? and ?) and a
textual comment to single moves. You can use a new String-Window to type
in moves instead using the mouse. Computer can take advantage of the
thinking-time of the human player, so often the computer may do his move
at once. Pieces are beamed (© by Scotty) from one square to the other.
Custom sounds can be played if datatype-library is available. Games are
saved in a new, more compact format, which needs only 2 bytes per
halfmove. This means, that most games takes not more than 400 Bytes on
disk, and are stored on one single disk-sector. There are again some
modifications in the playing-algorithm, I hope playing-strength is a
little bit improved, but I am not sure.
But there are some disadvantages in this release too: In the last 12
months I got only 8 new registrations. This is too many to cover my
expenses. So I wrote this release more for myself and some friends of mine
than for the public. To not waste too much time, I have produced only an
english documentation and english program-text. (And this english
documentation may contain very strange sentences!) Locale-library is still
supported, but I have not updated the german catalog, and I have not asked
the authors of the other catalogs to adapt their catalogs. Further this
release in not tested very well. I was not ready to waste a dozen of hours
for testing it, and I have distributed only a few betarelease of Vchess
4.1 to waste not too much postage. This release has many new features, it
takes much time to test all of them. Now the sourcecode has a size of
600k, and the structure of the source-code is not very simple. There is
much room for bugs to hide! If you find bugs, and you want that this bugs
will be fixed, than you should send me a note.
Opening-library, Games and Configurations have a new format now. This
release can load Games stored with releaee 3.5, and can import an
Opening-library stored with VChess 3.5. This release can not load old
configurations - but it is really not much work to create a new one. (In
release 3.5 there was a little bug: When saving a game, an empty comment
was not accepted. This gave trouble, when a game was saved and loaded many
times. This is fixed now, release 4.1 can load these games again.)
Additional there may be again a greater Opening-Library created by Uwe
Zedtler in this package. This big library is copyright by Uwe Zedtler, and
Shareware. For more information about this library see the documentation
of that package. Till now I have not used this large library, but I guess
that it may be useful for strong players. To use it, just replace my small
library with that large one. To say it again: This large library is © by
Uwe Zedtler, I may have only included it (with permission of Uwe Zedtler)
in this package. If this library is not part of this package, then you
should find it in AmiNet,I guess the name is game/board/VChessOpenings.lha.
Introduction
============
VChess is written fully in Oberon language (with a few
Assembler-routines), and was developed on an Amiga 3000 using Amiga Oberon
V 3.11d (© Fridtjof Siebert). With the help of OS 2.0 (3.1),
ReqTools.library and Amiga-Oberon, I have produced a compact, powerful and
easy to use program. To run this program, you need an Amiga with OS 2.0 or
greater, and additional the ReqTools.library. ReqTools.library
(© Nico Francois,Magnus Holmgren) is not part of this package, every
serious Amiga user should possess it. If not, take a look to AmiNet.
Please note that there exists a Preferences-Editor for ReqTools.library.
You can use this Editor (not part of this package) to modify the behaviour
of the ReqTools.library. VChess needs not very much memory. With a small
Opening-Library it should be possible to use VChess on an Amiga with only
1MB. The stacksize should be at least 8k, but if you have any problems,
try a larger stack. The Opening-library uses recursion, so a large library
may need a larger stack.
Installation
============
Copy, if not already installed, the ReqTools.library to LIBS:. This is
all. Now you can start VChess from Workbench with Double-Click. If you
want to install VChess on your hard disk, it is best to copy the whole
VChess-Drawer to hard disk, because this drawer contains the
Opening-Library and other things. VChess can use Catalog-files to adapt
itself to other languages than English. VChess searches for these
catalogfiles in PROGDIR:Catalogs/language. Where PROGDIR: is the directory
in which VChess resides. If, for example, your preferred system-language
is "deutsch", then VChess will load
"PROGDIR:Catalogs/deutsch/VChess.catalog". You can copy the catalogfile to
LOCALE:catalogs/language, VChess will find it there too, but I think it's
better to leave the catalogfiles in the VChess-Drawer. (You can use VChess
without its VChess-Drawer, but this is not recommended because many
additional files like the opening-library, saved games, Icons and so on
belong to VChess.)
Starting VChess
===============
The easiest way to start VChess is with a Double-Click on its Icon. But of
course you can start it from Shell by typing its name and then pressing
the <Return>-Key. (VChess needs no parameters.) If there is the file
VChess.config or Configs/VChess.config in the Drawer of VChess, then the
program uses this file for the startup-configuration, otherwise defaults
are used. It is possible to make VChess resident with the shell-command
RESIDENT. This can be useful for a few people, who need more than one
board. For example type in the shell
STACK 12000
CD VChess
RESIDENT VChess
RUN VChess
RUN VChess
to get two boards without wasting too much memory. This is not very nice,
because both boards appear at the same position, and you have to save and
load a game to exchange games, but it is possible. And most players will
only need one board!
First Steps
===========
Before you go on reading this text, it is better to start VChess now and
try it out. When the program has started, you can see five windows. The
big one with the chessboard is the main-window. The other windows are only
help-windows for showing some information. If one of these five windows is
active, then you can press the right mousebutton to take a look on the
Pulldown-Menu. (Don't be sad if the display looks ugly at this time. Many
things like colors, fonts and screen-resolution can be changed.) Now
select the menuitem "Config/Reset to defaults" to reset all adjustments to
defaults. Start the game by selecting "Project/NewGame". Now you play with
the white pieces against the computer. To move a piece, simply click on it
with the left mousebutton. (To click means: Move the pointer over the
chessman, and then press and release the left mousebutton.) Now this piece
is marked. Now click on the destination-square. If this was a legal move,
the piece will move from source to destination, and the computer will
answer with its move. Now it's again your turn, and so on. Don't hesitate
to test some of the menu-functions. The meaning of most of them should be
clear, just try it out. Of course you can re-size the windows, or close
the helpwindows.
Shareware-Contribution
======================
I started the development of VChess in summer 1992, and now in December
1996 version 4.1 is finally (nearly) finished. I guess, that this program
took more than 2000 hours of work till now. I think you can imagine how
much money the development of this program would have cost a
software-company, or how much money I could have earned if I had spent
this time somewhere else. And last not least the costs that the
development of software causes are not negligeable.
At the beginning I planed to sell VChess in a commercial way. But because
even with a commercial distribution it is not secure that the author gets
a justified amount of money for his work, I decided to distribute VChess
as Shareware. Shareware means, that the program can be freely copied, so
that everyone can get it (nearly) free of charge from friends, PD-Dealers
or by BBS-Systems. But when you like the program, and you want to go on
using it, you have to send a donation to the author.( Some people call
this sort of software giftware)
VChess 4.1 is true shareware again. This means that there are no
restrictions in this version. I emphasize this, because many authors have
decided to release only restricted versions of their software for freely
distribution. But there are no restrictions in VChess 4.1. This means that
you can test all functions of VChess, and you don't have to wait many
weeks after paying the contribution to get the fully functional version
from the author. And I have the advantage that I save some mailing-work
and postage.
So if you like VChess and want to go on using it, please send US$15 or
DM20 to the following address:
Stefan Salewski
Stolper Weg 3
D-21680 Stade (Germany)
Please compare this address with the text that you can see if you select
the menuitem "Project/About". If there are any differences in the
addresses, this means that somebody has made illegal modifications. In
this case try to get a clean, unmodified version of VChess. If you live in
Germany, you can send me a "Verrechnungsscheck" or make an "Überweisung"
to:
Stadt-Sparkasse Stade
Bankleitzahl 24151005
Kontonummer 823864
Otherwise I think the best way is if you send me the money in cash. It may
be possible to send an EuroCheck (only in DM !) or to send me the money by
postal money order. (But it is impossible for me to cash in foreign
checks, even if the amount is in DM. I got a check from an English bank
(DM 20), but I had to send it back because the banks in Stade charge DM 27
to cash it in.)
All people, who send me the contribution, will get a postcard, letter or
EMail from me, so that they know that I really got the money. If you
should not get this notification after six weeks, then something went
wrong. (Please don't forget to give me your FULL postal address.)
Playing-Strength
================
Of course it is a big difference if you play with a 68000- or
68060-processor. On my A3000 I lose most games against the computer, if I
play with fair conditions. Fair conditions means, that I don't take back
moves, and that I don't use more thinking-time than the computer. I can't
make precise statements about it, because I have too many possibilities to
compare VChess with. The playing-strength of version 2.0 was not very
great, but I think that in Version 4.1 the playing-strength is not bad.
The playing-algorithm is completely a development of my own, I spent
approximately 1000 hours on it. I guess that other people thought more
about it. The best way is if you test the playing-strength yourself. I
think, if you lose more than 50% of all games, then the playing-strength
is big enough for you. Note: If you lost nearly every game, it would be
very frustrating. Of course, if the playing-strength was very high, it
would be possible to degrade it artificially. But if you won against the
computer, you know that the computer have played intentional bad, you
would not be so glad about your win. If you think that the
playing-strength is too low, you can tell me. If many people think so, I
will try to increase it. For my own games the playing-strength is
currently big enough. (Sometimes it may occur that the computer make an
obviously bad move. This can happen for example, if the thinking-time is
short, so that the computer can't see an imminent attack of his opponent.
In this case you can do this: Select a longer thinking-time (for this move
only), and then select Extras/Undo last Move from menu. Now the computer
will take back his bad move. Using a longer thinking-time, he will find a
better move in most cases. Now you can use the smaller time again. For
example, I use 30 seconds thinking-time on my A3000. If I notice, that the
computer has done a very bad move, I select 3 Minutes thinking-time, and
Undo. Now I fetch a cup of tea, and when I come back, the computer has
found a better move in most cases. Now I select again the old
thinking-time of 30 seconds. A other way is this: You can select
Playmode/Human-Human, use Undo, and do a better move yourself. Now select
Playmode/Human-Amiga again.
Please don't try to compare VChess running on an A1200 with an expensive
program like "Fritz" on a Penium150. This is not fair. VChess is designed
for people like me, who want to play some chess sometimes, who want a
nice, cheap, easy to use program which is not impossible to beat.
The Use of VChess
=================
After starting VChess, you will see the mainwindow, and perhaps the four
other windows. The behaviour of the windows is like the windows of the
Workbench. You can move, re-size and close them. If you close the
mainwindow, the program will terminate. To move a chessman, simple click
on it and then on the destination square. (To make a rochade(castle),
simple move the king. The rook is moved automatically.) If you clicked on
a piece, and this click was a mistake, just click again on it to delete
the selection.
In the window titled "All Moves" you can see all moves of the current
game. The last performed move is marked with a ">", this is not very nice,
highlighting would look better, but GadTools-ListView-Gadgets only allow
highlighting of a complete line. The algebraic notation is used.
"2.Bf1-b5 e7-e5" means, that this is the second move, White moved the
Bishop from square f1 to square b5, and Black moved a pawn from e7 to e5.
The letters behind the movenumber (2.) have the following meanings:
P Pawn
N Knight
B Bishop
R Rook
Q Queen
K King
The "P" for a move of a pawn is usually substituted by a space. Some
special characters are used for special moves: "O - O" or "O-O-O" means
the small or big rochade. "e.p." indicates the special pawn move "En
passant". "+" and "#" are used to indicate check and checkmate. "#W"
means, that White is checkmate, "#B3" means, that Black will be checkmate
in 3 half-moves. "*W" or "*B" is my own notation if White or Black is
stalemate.
The third window titled "Thinking..." shows the valuation of all currently
possible moves. The numbers on the right side are the valuation of this
move. The number 100 is equal to the gain of a pawn, -25 is equal to the
lost of a quarter pawn and so on.
"3-3 Be4xd5 50" means the following: If the Bishop on square e4 would hit
the chessman on square d5, this would result in the active player gaining
of one half pawn. The characters "3-3" describe the deep of thinking, in
this example three half-moves. (A half-move is a move of a white or a
black piece.) In this example the computer has calculated for each
possible move of the active player a move of its opponent, and for each of
these moves of the opponent again a move of its own. From these three
half-moves the total gain of this move is calculated, and the computer
will select the move with the highest total gain. Note that in the average
a player can make one of 30 possible moves. And for all of these 30
possible moves there are again 30 moves as a response, and so on. This
means, if the computer calculates 3 half-moves deep, the computer must
process 30^3=30*30*30=27000 half-moves. You can think about it as the
computer building a tree for each possible move. The first half-move is
the root of a tree, and from this root there are 30 branches to a opposite
move, and from each opposite move there are again 30 branches to the
opposite-opposite-moves and so on. Of course such a tree doesn't have to
be totally symmetric, some branches can be longer (more nodes) and others
shorter. If an entry begins for example with "3-4", then this means that
the basic depth of this tree is 3 nodes, but this branch is 4 nodes deep.
Or sometimes you can see entries like "5-3". This means that the basic
depth of this tree is 5 nodes, but this branch is cut because it looks
like a bad move, or a checkmate will occur in 3 half-moves.
The fourth window is called "Move-Chain". If you click on an entry in the
"Thinking..."-Window, then the movechain of this move is displayed in this
window. This will help you to understand why the computer thinks that a
single move is a good or a bad move. The display of this window looks like
this:
------------
Gain: 40 +3
Nb8-c6 50
e4xd5 240
Qd8xd5 300
Nf3xe5 70
------------
This means: If the active player made the move "Nb8-c6", his opponent
would react with e4xd5 and so on. The real gain of the move "Nb8-c6" is
50-240+300-70=40. The +3 is a random-number added to the gain, so in the
"Thinking..."-window the displayed gain is 40+3=43. (The displayed gain in
the "Thinking..."-window may differ a little bit from the sum of the
movechain. This is not a bug, but occur because moves at the end of the
chain are less weighted.)
The last window titled "String-Input" can be used to set or move pieces
instead of using the mouse. This can be very useful if you want to type in
a game, opening or position from a book or newspaper. In playing-mode (see
below) you can type in moves in algebraic notation to do your move. You
can use the abreviated algebraic (PGN-like) notation too. Here are some
examples:
Pe2-e4 or e2e4 or ee4 or 2e4 or e4 or e or 4 may move the pawn.
Use lowercase letters for positions! And capital letters for
chessman-identifiers. It may be ok to enter only source- or
destination-coordinate, if this is a definite move. (If there is only one
legal move with this coordinate.)
Don't type O-O or O-O-O to do a rochade (castle), just move the king like
"Ke1g1". For an "En Passant" move just move your pawn, and for converting
a pawn to a queen just move the pawn.
After the move-coordinates you can enter a quality. There are four
qualities, !!, !, !? and ?. !? and ?! are identically, and you can use
simple numbers too, !!=1, !=2, !?=3, ?=4. If you don't enter a quality,
then the default quality (see below) is used. Please note, that only moves
with quality !! or ! can be added to the opening-library.
Additional, you can enter a textual comment behind each move. Here are
again some examples:
Re4xh4 !! This is a very good move
ef3!!
e2e4A usual opening
Qh ? It was not a good idea to move the queen to h
I hope this is clear, try it out.
In Buildup-mode, you can use this window to set up a position. First type
one single letter to indicate the color, for english language type "W" to
select white pieces, or "B" to select black pieces.
Now type just a coordinate to set a pawn, or a chessman identifier
followed be a coordinate to set a chessman.
"e4" or "Pe4" will set a pawn on square e4.
"Ka1" will set a King on square a1.
You can use a coordinate with a capital letter to clear a square. "G5"
will clear g5.
In setup-mode, spaces are not allowed. You have to type in one, two or
three characters, no spaces.
You can deactivate the String-Gadget, if you just type Return without any
input. This can be useful, if you want to do a Menu-Operation with
Menu-Shortcuts. (If the String-Gadget is active, you can't do
Menu-Operations with Shortcuts.)
Playing- and Buildup-Mode
=========================
There are two modes: Playing-Mode, and Buildup-Mode. In the Buildup-Mode
you can move pieces without any restrictions. In Playing-Mode you can do
only legal moves, and the chess clocks are running. The Buildup-Mode
contains a special sub-mode, called Replay-Mode. Replay-mode means, that
there is a game in memory (just played or loaded). In this case you can
use the menu items "Next Move", "Previous Move" etc. to replay it, and you
can save the game. If you are in Replay-Mode and modify the board by
moving pieces, you will go to the plain Buildup-Mode. If you are in the
plain Buildup-Mode, then you can save only the contents of the board
without any moves.
Titleline of the Mainwindow
===========================
The windowtitle is used for displaying various information, for example
error-reports or the last move. If the computer has done a move, you can
see in () the computing-power of the computer in moves per second, Mps
(really Half-moves). Additional, at the beginning of a game the name of
the used opening is displayed.
Chess clocks
============
At the top of the board window you can see three chess clocks. The clock
on the left displays the total time for the white player, and the clock on
the right the time for the black player. The clock in the middle shows the
time for the active player.
The Menu
========
If one of the five windows is active, then you can select one of the
following functions with the right mousebutton:
Project
-------
"New Game"
With this item you start a new game. All pieces are built up on their
initial position, and it is white's turn.
"Start Game"
With this item you also start playing, but the pieces stay at there
former places.
"Solve for Mate"
With this item you can activate a special playing-mode: The computer
will go on thinking until the computer sees a checkmate. Mate
in one move means, that the active player makes a move, and then his
opponent is checkmate. This is trivial. Mate in 2 Moves means, that
the active player makes a move, then his opponent makes any move, and
then after the second move of the active player the opponent is
checkmate. The Computer will start calculating all moves one move deep
searching for a mate in 1, then he will extend some interesting moves
to a greater depth. If no mate is found, he will calculate 2 moves
deep, first without depth-extension, then with depth-extension. You
can monitor the progress in the Thinking-Window.
You can stop the solving for mate, if you select "Stop Game" in menu.
This can be necessary, because there exists many chesstask which
VChess can not solve in short time. If there are no changes in the
Thinking-window for long time, then this task is to difficult for
VChess, and you should select "Stop Game" in menu. (All tasks in
drawer Checkmates/Solved are solved in less than 20 minutes on my
A3000. But the tasks in the drawer Unsolved my A3000 can not solve in
some minutes.)
When the computer has found the way to checkmate, he makes the first
move and stops the game. (If the computer has found a mate with
depth-extension, then he will go on with the next level. There may be
a shorter way to mate, or there may be more ways to mate.) You can see
all moves to mate in the MoveChain-Window. In general case, the next
move is not clear, the opponent can react with more than one single
move. This is the reason why the computer will not do all moves to
mate. But if you think that it is useful to save a special way to mate
then you can do this: Select "Thinklist/Update Movechain/No Update"
and "Playmode/Human-Human" from menu. Now start the game with
"Project/Start Game" and play the moves which you can see in the
Move-Chain-Window. Then you can save this way to checkmate by
selecting "Project/Save Game".
"Stop Game"
Terminates the current game (or solving for mate).
"Load Game... (or Set Up/Load Game...)"
With this function you can load a game, to analyse it or go on playing
it. For example you can select the menuitem "Setup/Next Move" multiple
times to go to a desired position in a game, and then select
"Project/StartGame" to start playing from this position. If you have
loaded a game, then the position is at the beginning of this game. So
if you want to continue a loaded game, it is necessary to select
"SetUp/Last Move" before starting the game.There is a good reason why
we don't jump to the last move automatically: Maybe you got a solved
Chesstask on disk, for example a "mate in 3". If you load this
chesstask, you probably will try to find the solution by yourself
first. Only if you can't see it, you will use "Next Move" from menu to
display it. (It may be a good idea to close the "All Moves"-Window
before loading a solved Chesstask, otherwise you will see the
solution.)
"Load quick"
This function will load the last saved game. This may be useful for
people who save and load the same game many time. (Playing letter- or
email-chess.) The name of the last game (and the directory-name) is
saved in the configuration-file. You may proceed like this. Save your
game with "Project/Save Game..." for example with name "MyGame". Now
select "Config/Save" from menu. Now "MyGame" is the default game-name.
When you start VChess the next time, you can select this item to load
this game. This is very fast.
"Save Game..."
With this function you can save a game, to go on playing it later, to
analyse it later, or just to archive it. You can save it in
Buildup-Mode and in Playing-Mode. If there is no game in memory, or
the board is modified, then only the board is saved. If you want to
save not the complete game, for example not the last bad move, then do
this: Go to the move, which is the last move which should be saved.
Now select "Extras/Delete Successors" from menu. Now the following
moves are erased, and you can save the game. For each game you can
enter a textual comment. This comment can be up to 79 characters long.
I use Dos.SetComment() to store this comment, so no additional
diskspace is used, and you can see this comment, if you type LIST in
the SHELL.
"Save quick"
Saves the game with the default name, see "Project/Load Quick". Will
work only if there is a default name.
"Save Movelist..."
The actual game is saved as a text file in algebraic notation.
"Print Movelist"
The actual game is printed as a text file in algebraic notation.
"Give Up..."
A Requester will ask you if you really wants to give up. If so, then
the game will stop, and the default comment to this game will be
"White/Black gave up".
"Offer Draw..."
Use this to propose a draw. In release 4.1 a draw is always accepted,
if the current position has occured 3 times
(Position-repeatition-rule) or if there was no progress in the last 50
moves (50-moves-rule). (The game ended in a draw, neigther side won.
In german we use the word Remis, I think it's a french word.)
"About..."
This item displays the address of the author of VChess.
"Quit"
Terminates the program.
Players
-------
"Human-Human"
Two human players play against each other.
"Human-Amiga"
A human player plays with the white pieces against the computer.
"Amiga-Human"
The computer plays with the white pieces against a human player.
"Amiga-Amiga"
Computer plays against computer.
Time
----
With this menu you can change the thinking-time of the computer:
"10 Secs, 20 Secs, 30 Secs"
Thinking-time is 10, 20 or 30 seconds.
"1 Min, 2 Mins, 3 Mins, 5 Mins, 10 Mins, 30 Mins"
Thinking-time is 1, 2, 3, 5, 10 or 30 minutes.
"1 Hour, 3 Hours, 8 Hours"
Thinking-time is 1, 3, or 8 hours.
"Infinite"
The computer calculates until a mate is found, or until you select
"Extras/Break" to force the computer to make his move.
"Custom"
With this function you can enter a custom thinking-time. With the four
gadgets you can determine if your input is in seconds, minutes or
hours. If you only press <Return>, then your input is assumed to be in
seconds.
"Equal ?"
If this item is marked, then the computer will adapt its thinking time
to the thinking time of the human player.
"For 1 Move"
The above time is used for a single move
"For 30 Moves"
The above time is used for 30 moves
"For Game"
The computer will try to finish the the whole game in the selected
time.
"Reset"
Resets the chessclocks to zero
Thinklist
---------
"Refresh"
The computer is always thinking for the active player, even if the
active player is a human player. If you select this item, then the
list of all currently possible moves together with their valuation is
displayed. Of course the valuation may change with time, because the
computer is thinking deeper and deeper. So if you select this item
after some time again, the valuation will be not the same. You can
also select this item if the computer is the active player, to see how
the computer evaluates the different moves.
"Refresh & Sort"
Like "Refresh", but the moves are displayed sorted by gain, best move
at the top.
"Show old List"
This item is similar to "Refresh", but it displays not the current
(active) list, but the old list containing the last move. Sometimes it
is necessary to take a look on the old list, for example if the
computer makes a strange move, and you want to find out why he made
such a move. If the list containing this strange, last move is not
visible, then select this item to display it again.
"Show old List sorted"
Like "Show old List", but the moves are displayed sorted by gain, best
move at the top.
"Show best Chain"
Displays the Movechain of the currently best move. (You can use this
item or "Refresh & Sort" to get help from the computer.) Please note:
The best move is not always the one with the highest valuation! The
computer may prefer a move with a smaller valuation, but with a
greater depth!
"Beep if updated ?"
If this item is marked, then the computer makes an audible beep if the
Thinklist- or MoveChain-Window is updated.
"Show sorted ?"
If this item is marked, then the Thinklist is displayed sorted by
gain, otherwise sorted alphabetically.
"Update Display"
"If changed"
Update Thinklist and Move-Chain whenever there are changes. This may
slow down the calculating power, because in early states of a
thinking- process (the first seconds) there are many changes per
time interval.
"Automatic"
Update Thinklist and Move-Chain if it is useful, for example after
2, 5, 10, 20, 30, 60 seconds, and then whenever there are changes.
"No Update"
Only update the display, when the user select
"Thinklist/Refresh & Sort" or an equal item. The "Move-Chain"-window
is updated, if the user clicks on an entry in the Thinklist.
"Refresh if"
"It's Computer's turn"
Refresh Thinklist and Move-Chain, if the computer is the active
player.
"It's Your turn"
Refresh Thinklist and Move-Chain, if a human is the active player.
"Update MoveChain"
"Best Move"
Display in the Movechain-Window the best move.
"Current Move"
Display in the Movechain-Window the current (last calculated) move.
"No Update"
Don't update the Move-Chain-Window automatically. The "Move-Chain"-
window is updated, if the user clicks on an entry in the Thinklist.
Display
-------
"Show Movelist"
The helpwindow, which shows the moves of the current game, is opened
or brought to the front.
"Show Thinking"
This function will open the window, which shows the valuation of all
currently possible moves, or brings this window in front of other
windows.
"Show MoveChain"
If you select this item, then the window, which displays the movechain
of a special move, is opened or brought to the front.
"Open String-Window"
Opens the window for string-input, or brings it to front. The
String-Gadget should become active too. This can be useful, if this
Menu-Item has a Shortcut. So you can activate the Input-Window with
the keyboard. I am not sure, if this really works ever. I use
ActivateWindow() and ActivateGadget(), maybe more code is necessary.
"Rotate"
"90+, 180, 90-"
With these items you can rotate the board.
"Change Colors"
If you select one of the following eleven items, then a Color
requester is opened. Click on the color, which should be used for the
drawing. If you use a custom-screen, you can use the sliders to change
the color-values. But if you play on a public-screen, it's better to
only select a color instead of changing the value. You can only select
one color at a time. If you click on "Ok", then the board is drawn
with the selected color. For pieces and squares you can select two
colors, A and B. Color B is used for the border of the pieces, and
although if the squares are not monochrome (pattern).
"White Pieces A"
Color A (inner) of white pieces.
"White Pieces B"
Color B (border and pattern) of white pieces.
"Black Pieces A"
Color A (inner) of black pieces.
"Black Pieces B"
Color B (border and pattern) of black pieces.
"White Squares A"
Color A of white squares
"White Squares B"
Color B of white squares
"Black Squares A"
Color A of black squares
"Black Squares B"
Color B of black squares
"Board-Border"
Color of the border of the board.
"Board-Text"
Color of the text of the board. (1..8, a..h, and chess clocks )
"Rectangle"
Color of the rectangle, which is drawn around a selected piece or
square.
"Change Patterns"
You can select between four different patterns for the squares and
pieces: Mono (only color A), points, lines up and lines down.
"White Pieces"
Pattern for white pieces
"Black Pieces"
Pattern for black pieces
"White Squares"
Pattern for white squares
"Black Squares"
Pattern for black squares
If the display looks ugly on your screen, you should try other colors
and patterns. The defaults look nice on an hires-interlace-screen with
OS2.0-colors, but if you have to play on a screen with lower
resolution or different colors, then it's a good idea to try other
color-selections and patterns.
"Beam time"
With these items you can control the speed with which the pieces are
moved from one square to an other square.
"0"
Pieces are moved at once.
"1"
Pieces are moved very fast
"2"
Pieces are moved fast.
"3, 4, 5"
Moving takes about 3, 4 or 5 seconds
"Setup Mode ?"
The board gets a border on the left and right side. On this border
rest some chessmen. In the Buildup-Mode, you can select these pieces
and use them to build up a position. Also you can move pieces on the
border to throw them away. In playing-mode the border has no function.
"Coordinates ?"
If you turn off coordinates, you have more room for the pieces. But I
think this is only necessary if you have to play on a screen with very
low resolution.
"Chess Clock ?"
You can turn off the clock. If you have turned off coordinates, clock
is always turned of too.
"Draw beam frame ?"
If this item is marked, then a border is drawn around pieces while
beaming. So it is easier to see which pieces are moving.
"Show Quality ?"
Starting with release 4.0 of VChess, to every move is assigned a
quality from 1 to 4, or !! to ?. Quality is important if you want to
add moves to the opening-library. You can ignore the quality, if you
deactivate this item.
"Print Space for !?"
For most games !? will be the default quality, so most moves will have
quality !?. Then it is optically more nice if a simple space is used
instead of !?.
"Squareframes"
"White ?"
Draw a frame in color A around white squares
"Black ?"
Draw a frame in color A around black squares
"Change Screen..."
With this item you can select if you want to play on the default
public screen, on a public screen or on a custom screen. If you want
to play on a public screen, you have to type in its name. If you want
to play on a custom screen, it is recommended to use a screen with
four or eight colors. It is possible to use a screen with only two
colors, but this will not look very nice. More than eight colors are
not recommended, because VChess currently doesn't use more than eleven
different colors. Please keep in mind, that screen resolution and
number of colors may affect the calculating speed of your computer.
For example on my A3000 calculating speed is degraded about 50% if I
use a hires-16-color-screen or Productivity-Mode. Note that parts of
the pulldown-menu may be invisible if you use a large screenfont and a
screen with a low horizontal resolution.
"Screenfont..."
If you play on a custom screen, then you can select a font which is
used for menus and windowtitles.
"Textfont..."
With this function you can select a font which is used in the active
window. First click in the desired window to make it the active one,
then select this item. So you can select different fonts for each
window.
Set Up
You can access this menu only if you are in Buildup-Mode, maybe you have
to select "Project/StopGame" before.
"Load Game..."
See "Project/Load Game..."
"First Move"
Jumps to the beginning of the game.
"Next Move"
The next move is performed.
"Previous Move"
Takes back the last move.
"Last Move"
Jumps to the last move of the actual game.
In Playing- and Buildup-Mode, you can use the Scroller and associated
Arrows in the board-window to move in a game, too. And if the
boardwindow is active, you can use the Cursor-Keys too:
Cursor Left: Move to beginning
Cursor Right: Move to the end
Cursor Down: Do next move
Cursor Up: Go back, or undo
"Clear Board"
All pieces are removed from the board.
"Build Up"
All pieces are moved to their start-position.
"Reset"
Resets a modified board. This is useful, if there is a game in memory
(just played or loaded), and you have modified the board by moving
pieces (or changed the active color with the following two items). In
this case it is not possible to go on playing this game, to use
"Next Move", "Previous Move" etc. Instead of pushing back all moved
pieces, you can use this item to reset the board and active color.
"White's turn"
The white player has to do the next move.
"Black's turn"
The black player has to do the next move.
Config
------
You can save all settings in a configuration-file.
"Create Icons ?"
With this item you can select if the program shall create icons for
saved files. If the program has to make Icons, then one of the
following icons is copied if it exist, or defaults are used.
Filetype Used Icon (if it exists)
------------------------------------------
Game "Icons/GameIcon", "GameIcon", "Games/Game1", "Game1"
Configuration "Icons/ConfigIcon", "ConfigIcon",
"Configs/VChess.config", "VChess.config";
Textfile "Icons/TextIcon", "TextIcon", "Text/Text1", "Text1"
Additional, if using Locale.library, for each filetype there are two
language-dependant Iconnames. For "deutsch" these are:
Filetype Icons for deutsch language (if it exists)
------------------------------------------
Game "Spiele/Spiel1", "Spiel1"
Configuration "Configs/VChess.config", "VChess.config";
Textfile "Texte/Text1", "Text1"
"Use opp. Time ?"
Starting with release 4.0 VChess may take advantage of the
thinking-time of the human player. This can be useful if the computer
has only a short thinking-time, while the human player take a much
longer time. If this item is activated, the computer may do his move
at once. If a weak human player plays against a fast computer, then it
may be necessary to deactivate this item. Otherwise the computer may
always win, even if the thinking-time is only one second.
"Teaching ?"
With this function you can switch on a teaching-mode. If you are
playing and it is your turn, and you click on a piece, then all
squares on which the chessman can be moved are marked. This is very
useful for children learning chess.
"Set Sound Volume..."
Type in a value from 0 to 64. 0 means no sound, 64 maximum volume.
"Set Error-Sound..."
Now VChess can play extern soundfiles using datatypes. This should
work with OS 3.1 if DataTypes.library is availiable. The sounds in
drawers "Sounds" are 8SVX-Files, I found them in the
Term4.7-Distribution of Olaf Barthel. Other soundfiles may work too,
if corresponding datatypes are installed on your computer. You can
select a file from drawer "Sounds", or you can type in an empty string
to get a simple DisplayBeep.
"Set Update-Sound..."
Here you can select which sound should be played if the
Thinking-Window or MoveChain-Window is updated. Type in an empty
string to get a simple beep.
"Set Move-Sound..."
This sound is played if the computer makes a move. An empty string
will give a simple beep.
If you have any trouble with the sounds, try to enter an empty string
(just press Return) for all three sounds. Or set Sound-Volume to 0, or
delete the whole "Sounds"-drawer.
"Load..."
Loads a configuration and activates it.
"Save"
Saves the actual settings as defaults. The program will use these
settings at the next start. The settings are stored in the file
VChess.config, or if the drawer Configs exists, in this drawer.
"Save As..."
With this function you can save additional configurations, which you
can load and activate again with "Config/Load" .
"Last Saved"
This function activates the configuration which was used at the start
of the program, or which was saved with "Save". This is the file named
Configs/VChess.config or VChess.config.
"Reset to defaults"
Resets all settings to defaults.
Extras
------
"Store this Pos."
Stores the current position. You can use this function in Playing- and
Buildup-Mode. This is very useful, if you try to solve a chess task,
or to develop new openings or if you are playing letter chess
(exchanging single moves with a friend by letters, EMail or phone.)
"Restore old Pos."
Restores the stored position.
"Set White's Aggr., Set Black's Aggr."
With these two items you can change the aggression of the computer. If
you enter the number N, then this means that the computer will assign
the pieces of his opponent a new value:
NewValue:=(RealValue + (RealValue*N/100).
The values of his own pieces remain unchanged. So, if you entered a
positive value, then the computer will give the opposite pieces a
greater value than his own pieces, and will play a more aggressive
game, maybe he will try to exchange a pawn of his own with a pawn of
his opponent. If you enter a negative value, then the computer will
play a less aggressive game, he will try to prevent the exchange of
equal pieces.
White's aggression is only important if the computers plays with the
white pieces. If the computer plays with the black pieces, you have to
use "Set Black's Aggr.". You will only have to use both items, if the
computer plays with white and black pieces (Playmode Amiga-Amiga). So
you can see what happens, if a aggressive computer player plays again
an un-aggressive computer player.
"Valuation"
The computer will evaluate the current position. In Buildup-Mode this
valuation is only an approximation, only the pieces on the board and
their strategic positions are taken into account. It is not regarded
if one chessman can capture an other chessman, or if a mate will occur
after some moves. In playing mode, the gain of the next move is added
to this valuation. This gives a more precise result.
"Break"
With this function you can force the computer to make his move. Useful
if you are not very patient.
"Undo last Move"
With this function you can take back the last move. The chess-rules
don't allows this, but I think some people will use this function
sometimes. Of course you can take back many moves by selecting this
function again and again. (There may be a little problem: If you take
back an "En Passant"-Move, you (or the computer) can not do this move
again. In this case go back two moves, and then go forward again these
two moves.)
"Redo the Move"
The move which you have taken back is again performed.
"Delete Successors"
With this function you can delete all successors of the actual move.
This can be useful if you want to save or print only the beginning of
a game. Go to the desired position, then select this item.
"Pause"
This function stops the chess clocks, and sets the thinking-process to
a very low priority, so no computing-power is consumed. The break
automatically ends, if an user input is registered.
"Set Task Pri. ..."
With this function you can modify the priority of this program.
Generally you will not need this function. Because a permanent
modification of priority is not useful, it is not stored in
configuration files. At the next start of VChess, the priority will be
again zero (if started from workbench) or equal to the priority of the
shell-process (if started from shell). The priority of the
thinking-process is always one point lower than the priority of the
main process. So user input is always processed in real-time.
"Default Quality"
Whenever a move is performed, a quality is assigned to it. If the
moves originates from the opening-library, then the quality is given
by the opening-library, !! or !. If the computer calculates the move,
or if you do the move with the mouse, then the default quality is
used. Default quality can be !!, !, !?=?! or ?. There are only 4
different qualities, because one move is stored on disk in only 2
Byte. There is no more space for other qualities. I think 4 different
qualities are enough, it is not useful to waste one additional Byte
for each move. It may look strange that moves originating from
opening-library have quality !! or !, for example e2-e4!!. If you
don't like this, just turn of displaying of quality with
"Display/Show Quality". In the general case, you should use !? as
default quality, and activate "Display/Print Space For !?". Then you
can mark good moves with !! or !, and bad moves with ?.
"!!"
Default Quality is !!
"!"
Default Quality is !
"!?"
Default Quality is !?
"?"
Default Quality is ?
"Random"
With this item you can make the play of the computer more interesting.
Principle the computer would do always the same move in the same
situation, because he calculates the best move. But to the result of
the calculation a random number is added. With this function you can
select the upper border of this number. 100 points are equal to the
(virtual) win of a pawn.
"0, 25, 50, 100"
The random value is in the range between zero and 0, 25, 50 or 100.
If you select "0", then the computer always will do the same move in
the same situation. If you select "50", then to each calculated gain
a random number between 0 and 50 is added.
In late endgame, i.e. King vs (King+Bishop+Knight), it may be useful
to select a smaller Random-Value, i.e. less than 16. Otherwise, with
Random-Value >=25, it may occur that the Computer can not force a
mate in less than 50 moves. Large Random-Values in conjunction with
small thinking-time in Endgame sometimes gives strange results,
because the computer will always try to prevent a repetition of a
position.
"Custom"
With this function you can enter a custom upper boundary for the
random number. If the boundary is high, then the playing-strength of
the computer will decrease. But maybe this is what you want.
"Set Comment..."
With this function you can enter or modify a textual comment to the
actual move. The actual move is marked with a ">" in the
"All Moves"-Window.
"Set Quality..."
With this function you can modify the quality of the actual move.
"Show Comment"
Displays the comment of the actual move in the Board-Window-Title.
This may be useful, if the window titled "All-Moves" is closed, or if
the comment is very long. (In the "All-Moves"-Window only the
beginning of a long comment is displayed.)
"Show Game Com."
Displays the comment to this game.
Openings
--------
The computer can use an Opening-library for the first moves of a game.
(Please don't be confused, the Opening-library is not a Library like
ReqTools.library, but just a collection of openings.) The filename of
this library is VChessOpenings. This file must reside in the same
directory as the program VChess (PROGDIR:). (I think there is no reason
to hide it in sub-directories, or to use more than one Opening-library.)
Using this library means that the computer needs no thinking time for
the first moves, and the playing-strength of the computer is greater. Of
course the library can only be used, if the game starts from initial
position. (Now it should work too, if Black starts the game.) Note that
the opening-library is loaded if playing starts. This means, if you
select "Openings/Use not" before you start playing, the library will not
be loaded in memory. In release 4.0 one Halfmove of the library needs 2
Bytes on disk, and 16 Bytes in RAM. This means, that a very large
Library of 10^5 = 100000 Halfmoves will need 200K on Disk, and 1.6MB
RAM.
"Show Name"
Displays the name of the used Opening. For Example "King's indian
defence (3)" means, that the three first moves of this game are called
"King's indian defence", the fourth and the following moves have no
name.
"Show Moves"
This function looks like a simple chess-database for openings. All
moves of the opening-library, which can be used in the current
situation, are displayed in the "Move-Chain"-Window. Try
"Project/New Game", and then select this Item. You will see "e2-e4"
and some other good starting-moves.
"ShowNumber"
Displays the total number of moves (halfmoves) in the Opening-Library.
"Use !!"
Computer shall use only !!-moves of the opening-library.
"Prefer !!"
Computer shall prefer !!-moves, but may used !-moves (second class) if
no !!-move is available.
"Use !! and !"
Computer may use both classes.
"Don't use"
Computer shall not use the Opening-Library.
"Delete actual"
Which this function you can delete the actual, last performed move
from opening-library. For example, if the computer has done the move
a2-a3, and you think that this is a bad move, just select this item to
delete it and all successors of this move in opening-library. You can
use this function to delete any opening. For example, you suppose that
1. e2-e4 b7-b6 is stored in Opening-Library, and you think that the
second halfmove is a bad move. Select "Playmode/Human-Human" from
menu, and then "Project/New Game". Now do these two moves, and then
select "Openings/Delete actual" to delete b7-b6 and all successors.
e2-e4 will remain unmodified.
"Cut Tree..."
This may be useful if your Opening-Library is to large.
Opening-Library builds a tree, and with this function you can cut all
branches which are longer than the number which you enter in the
string-gadget. This works like hedgeshears!
"Delete all !"
This may be useful if your Opening-Library is to large. It will delete
all second-class moves.
"Dump to File..."
This function writes all moves to a file in algebraic notation. The
resulting file may become very large, because the three-structure has
to be converted to a linear form.
"Add this Game"
Adds the current game to the library. Please note, that only first-
and second-class moves can be stored in the library. Of course you can
add only regular games, this means games started from their initial
position and white as active player. If you will add an opening from a
chess book, it is recommended to do it in this way: Select
"Players/Human-Human" and now "Project/NewGame". Now you can play the
opening from the book, and then select this item to add it to the
library. You should only add your own openings (games) to the library
if you are a strong player, because an opening should contain only
very strong moves. If there is only one weak move, then the computer
may do this weak move and the playing-strength decreases. Please note
the following: If you want to add new entries to the Opening-Library,
it is necessary to load the existing library in memory before you add
new entries. To test if the library is loaded, select
"Openings/Show Number", or just use "Openings/Load" to load it
(again).
"Correct Quality ?"
If this item is marked, then the quality of existing moves in the
library may be overwritten if you add new moves. In general case this
item should not be activated. But it may be useful, for example if 1.
e2-e4! is stored in the library, and you want to modify it to e2-e4!!.
"Max Depth"
With the following items you can set the maximum depth, up to which
moves can be added to the library with "Openings/Add This Game". It is
not useful to add all moves of a game to the library. 18 Moves = 36
Halfmoves are a good depth. But of course you can add the maximum
value, 64 halfmoves, and use "Openings/Cut Tree" if the library grows
to big.
"24"
Don't add more than 24 Halfmoves.
"36"
Don't add more than 36 Halfmoves.
"48"
Don't add more than 48 Halfmoves.
"64"
Add up to 64 Halfmoves, this means up to 32 Moves.
"Load"
Load the Library again from disk. This can be useful if you have done
an operation like "Openings/Cut Tree", and you have deleted to many
moves.
"Import V3.5..."
This function is for people who have created a large Opening-Library
with VChess 3.5, and want to use it with VChess 4.1. You can import
more than one V3.5-Library. Proceed as following: Start VChess, and
select this function. Now select the (first) V3.5-Openings-file. It
will be imported. Now you can select further V3.5-Openings-files. If
you are done, you may select "Openings/Show Number" to see how many
Moves you have imported. Now select "Openings/Save all Entries" to
save the library in the new format. This function will destroy the
currend game!
"Flush"
This function will remove all moves from RAM. This can be useful, if
you don't need the library any more, and you have not much RAM.
"Save all Entries"
If you select this item, then the opening-library is saved. If you
forgot this, all modifications are lost.
Menu-Shortcuts
==============
Some people like many Shortcuts, other not. The menu is very large, with a
large screenfont a menu with much shortcuts may look not so nice. The
english VChess.catalog will give you many shortcuts. If you don't like so
much shortcuts, then you can delete (or rename) this catalog, and you will
get only a few shortcuts in the "Project"-menu.
Advanced Topics
===============
If you want to start a game with a definite opening, then you can do it
this way: Select "Players/Human-Human" in menu, and then
"Project/New Game". Now do the desired starting-moves, for example
"1.e2-e4 e7-e5". Now select "Players/Human-Amiga". Now do your next move,
for example 2.g1f3. Now the computer will do the next move, using a move
from Opening-library if present. But you have to take care about this: You
should switch from "Players/Human-Human" to "Players/Amiga-Human" (or
Players/Human-Amiga) only if it will be your turn after switching.
Otherwise the computer is already thinking for his own move, and he will
use the result of the thinking-process instead of a move from library. If
you want to use the same opening many times, then do the first moves
(until it is your turn), and save the game , for example with name
"MyPreferedOpening". Now select "Config/Save" to make this name the
default game-name. If you start VChess again, do this: Select
"Project/Load Quick", "Setup/Last Move" and "Project/Start Game". Now it
should be your turn, and you start the game from the desired position,
while the computer can use the opening-library.
If you enter additional openings, then it is not necessary to enter each
opening from the beginning again. If you want to add openings, all
beginning with e2e4,e7e5,g1f3, then you have to type in the first three
halfmoves only ones. You can use cursor-keys, scrollergadget or the menu
to go back some moves, and then type in the new way. Or you can use
"Extras/Store Position" and "Extras/Restore Position" too. This may save
some work, or it may confuse you.
Now, at the end of this text, some general remarks:
Errors or bugs in VChess
========================
I'm sure that there are some small bugs in this version of VChess. Don't
hesitate to write to me if you find bugs or have comments about VChess.
But please don't expect a (long) response to each of your short letters.
Till summer 1997 you may reach me at this EMail-Adress:
SALEWSKI@PHYSNET.UNI-HAMBURG.DE
But please don't send mail just for fun!
New releases of VChess
======================
There are still some things which may be improved. Transfering the
thinking-algorithm from Oberon to Assembler would increase the
calculating-power by a factor 2, and it may be useful to use special
algorithm for special situations. An ARexx-port, a Database (Hash-Table)
for endgame, PGN-Format-Support may be useful. Using a (MUI)Control-Panel
instead of such a large Pull-Down-Menu would make it more easy to change
settings, and some people would like a board with 3D-Graphics. But I think
that there will be no major Updates of VChess on the Amiga. Till now
(27.12.1996) only 70 VChess-user paid their contribution. And in the last
12 months I got only 8 new regitrations. This is not enough to cover my
expenses. If this release should contain serious bugs, then you may find a
bugfix in AmiNet in some months.
Maybe there will be a transformation of VChess on a Pentium- or RISC-CPU
in the far away future. But that release will not be Shareware again!
VChess and other languages
==========================
It is allowed to make verbatim translations of this documentation or to
produce new catalog files for other languages. You can distribute these
translations (together with the VChess-package) in your own country
without asking me for permission, but please don't make free, shortened or
buggy translations. You should only make translations, if you are really
using VChess, so that you can verify your work. (I think no translation is
better than a bad one.) Making a translation is a lot of work, so it may
be useful to contact me before starting with the translation. Maybe there
is already a new release of VChess, or someone else has already made the
desired translation. If you have produced a really good translation, then
you can send it to me. Maybe I will add it to the VChess-package.
By using the Locale.library, VChess can adapt itself to other languages if
running under OS2.1+. Currently only english is supported. But the file
VChess.cd is part of this package. So if you have the program CatComp (©
CBM) (or a FD-Program which works like CatComp) and you know how to use
CatComp, then you can produce Catalogfiles for your preferred language.
Although English is the built-in language of VChess, there exists an
English VChess.ct-file. You can use this (together with CatComp and
locale.library) to adapt the English text to your own desire. (Modify the
VChess.ct-file, use CatComp to create the VChess.catalog-file (Usage:
CatComp VChess.cd TRANSLATION VChess.ct CATALOG VChess.catalog) and then
copy the VChess.catalog-file to Catalogs/english/VChess.catalog. If you
now start VChess again (after a reset or "avail flush"), you should get
the new text.)
(There exists an english Catalog (Drawer Catalogs/english/VChess.catalog)
too. If you use this catalog, you will get many Menu-Shortcuts. If you
don't like so much shortcuts (like me), just delete this catalog. Then you
will get the built in strings, with only very few Shortcuts.)
If you modify Catalog-translations (VChess.ct), or create new
translations, please note this: Menu-Shortcuts are localized too. This is
suggested in the Amiga-Style-Guide-manual, although many programs don't do
this. For most menutexts, there is a corresponding Shortcut-text. Use
"\x00" to get no shortcut, or a single character to use a shortcut. (This
is much overhead, Nico Francois used an other way. He integrated the
shortcut into the menutext. I used this way in release 3.5 too, but this
was diffical to handle for translators.) In the Catalog-translations,
there are some strings which contains vertical bars, "|". These characters
have a special meaning for ReqTools.library. They divide the text for
different response-gadgets, so don't delete these characters. If such a
string contains any number of these characters, the number must remain
constant. Some strings may contain the characters "%ld". This is used to
insert a number, so don't delete this. Some strings contain "\x20". This
is only a space, you may delete it, but this is not recommended. Some
strings must have a special length, look at the file VChess.cd to read
this length. (/6/8) for example means, that the minimum length is 6
characters, and maximum length is 8 characters. Some strings contain a
"\n". This is only to write the following text on a new line. Most strings
have no limitations in length, but if you create too long strings, it may
look ugly.
And now I hope that you enjoy this game.
Stefan Salewski, December 1996